package main

import (
	"fmt"
	"strings"
)

// string 常用操作
// scroenv 的使用
// 修改字符串
// 转换为 []byte 或者 []rune
func changeString() {
	s1 := "big"
	// 强制类型转换
	byteS1 := []byte(s1)
	byteS1[0] = 'p'
	fmt.Println(string(byteS1))

	s2 := "白萝卜"
	runeS2 := []rune(s2)
	runeS2[0] = '红'
	fmt.Println(string(runeS2))
}

func transString(str int) (ss string) {
	var s1 string
	s1 = "string"
	var s2 string
	s2 = "string\r\n\t\"\\"

	s3 := `
			多行字符串
			会原样输出
	`

	// 字符串常用操作
	l := len(s3)
	pinjie := s1 + s2
	piinjie2 := fmt.Sprintf("%s - %s", s1, s2)

	splits := strings.Split(s2, "") // 返回字符串切片 []string

	strings.Contains(s2, "d") // 是否包含

	strings.HasPrefix(s2, "1")
	strings.HasPrefix(s2, "")
	strings.LastIndex(s2,"do")
	strings.Index(s2,"2")
	s5 := []string{
		"h","do",
	}
	strings.Join(s5,"+")
	return string(str)
}

func main() {
	changeString()
}
